var process = process || {
	env: {
		NODE_ENV: "development"
	}
};
! function(t, e) {
	"object" == typeof exports && "object" == typeof module ? module.exports = e() : "function" == typeof define &&
		define.amd ? define([], e) : "object" == typeof exports ? exports.cl_tracker = e() : t.cl_tracker = e()
}(window, (function() {
	return function(t) {
		var e = {};

		function r(o) {
			if (e[o]) return e[o].exports;
			var n = e[o] = {
				i: o,
				l: !1,
				exports: {}
			};
			return t[o].call(n.exports, n, n.exports, r), n.l = !0, n.exports
		}
		return r.m = t, r.c = e, r.d = function(t, e, o) {
			r.o(t, e) || Object.defineProperty(t, e, {
				enumerable: !0,
				get: o
			})
		}, r.r = function(t) {
			"undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(t, Symbol
				.toStringTag, {
					value: "Module"
				}), Object.defineProperty(t, "__esModule", {
				value: !0
			})
		}, r.t = function(t, e) {
			if (1 & e && (t = r(t)), 8 & e) return t;
			if (4 & e && "object" == typeof t && t && t.__esModule) return t;
			var o = Object.create(null);
			if (r.r(o), Object.defineProperty(o, "default", {
					enumerable: !0,
					value: t
				}), 2 & e && "string" != typeof t)
				for (var n in t) r.d(o, n, function(e) {
					return t[e]
				}.bind(null, n));
			return o
		}, r.n = function(t) {
			var e = t && t.__esModule ? function() {
				return t.default
			} : function() {
				return t
			};
			return r.d(e, "a", e), e
		}, r.o = function(t, e) {
			return Object.prototype.hasOwnProperty.call(t, e)
		}, r.p = "", r(r.s = 0)
	}([function(t, e, r) {
		"use strict";
		r.r(e), r.d(e, "cl_tracker", (function() {
			return _t
		}));
		var o = Array.prototype,
			n = Object.prototype,
			i = o.slice,
			a = n.toString,
			s = n.hasOwnProperty,
			u = o.forEach,
			p = {};

		function c(t, e, r) {
			if (null == t) return !1;
			if (u && t.forEach === u) t.forEach(e, r);
			else if (t.length === +t.length) {
				for (var o = 0, n = t.length; o < n; o++)
					if (o in t && e.call(r, t[o], o, t) === p) return !1
			} else
				for (var i in t)
					if (s.call(t, i) && e.call(r, t[i], i, t) === p) return !1
		}

		function l(t) {
			return "[object Object]" == a.call(t) && null != t
		}

		function f(t) {
			l(t) && c(t, (function(e, r) {
				var o;
				l(e) ? f(t[r]) : (o = e, "[object Date]" == a.call(o) && (t[r] =
					function(t) {
						function e(t) {
							return t < 10 ? "0" + t : t
						}
						return t.getFullYear() + "-" + e(t.getMonth() + 1) +
							"-" + e(t.getDate()) + " " + e(t.getHours()) + ":" +
							e(t.getMinutes()) + ":" + e(t.getSeconds()) + "." +
							e(t.getMilliseconds())
					}(e)))
			}))
		}

		function h(t) {
			l(t) && c(t, (function(e, r) {
				var o, n, i;
				l(e) ? h(t[r]) : (i = e, "[object String]" == a.call(i) && (t[r] = (n =
					255, (o = e).length > n ? o.slice(0, n) : o)))
			}))
		}

		function g(t) {
			for (var e = [], r = 1; r < arguments.length; r++) e[r - 1] = arguments[r];
			return c(i.call(arguments, 1), (function(e) {
				for (var r in e) void 0 !== e[r] && (t[r] = e[r])
			})), t
		}

		function d() {
			return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (function(t) {
				var e = 16 * Math.random() | 0;
				return ("x" == t ? e : 3 & e | 8).toString(16)
			})) + "-" + (new Date).valueOf()
		}

		function y(t) {
			var e = {};
			for (var r in t) 0 === r.indexOf("cl_") && (e[r] = t[r]);
			return e
		}

		function m(t, e, r) {
			if (t[e]) {
				var o = t[e];
				t[e] = function() {
					for (var t = [], e = 0; e < arguments.length; e++) t[e] = arguments[e];
					r.apply(this, t), o.apply(this, t)
				}
			} else t[e] = function() {
				for (var t = [], e = 0; e < arguments.length; e++) t[e] = arguments[e];
				r.apply(this, t)
			}
		}

		function v(t) {
			if (!t) return !1;
			var e = t.split(".");
			return 6 === e.length && e.every(Number)
		}

		function _(t) {
			return !!{
				tap: 1,
				longpress: 1,
				longtap: 1
			} [t]
		}
		var w = "Method not implemented.";

		function b(t) {
			if (!t) return "";
			var e = Object.keys(t).sort();
			if (!e.length) return "";
			var r = [];
			return e.forEach((function(e) {
				var o = t[e];
				o.constructor == Array ? (o.sort(), o.forEach((function(t) {
					r.push(e + "=" + t)
				}))) : r.push(e + "=" + o)
			})), "?" + r.join("&")
		}

		function T(t) {
			return T = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(
				t) {
				return typeof t
			} : function(t) {
				return t && "function" == typeof Symbol && t.constructor === Symbol && t !==
					Symbol.prototype ? "symbol" : typeof t
			}, T(t)
		}
		var k, S = function() {
				function t(t) {
					this._state = {
						props: {}
					}, this.tid = t
				}
				return t.prototype.init = function() {
					this.getStorage()
				}, t.prototype.saveValue = function(t, e, r) {
					throw new Error(w)
				}, t.prototype.getValue = function(t) {
					throw new Error(w)
				}, t.prototype.getProps = function() {
					return this._state.props || {}
				}, t.prototype.setProps = function(t, e) {
					var r = this._state.props || {};
					e ? this.set("props", t) : (g(r, t), this.set("props", r))
				}, t.prototype.set = function(t, e) {
					var r = {};
					for (var o in "string" == typeof t ? r[t] = e : "object" === T(t) && (r =
							t), r) this._state[o] = r[o];
					this.setStorage()
				}, t.prototype.setStorage = function() {
					throw new Error(w)
				}, t.prototype.getStorage = function() {
					var t = this.getValue("cl_data_wechat");
					t && this.toState(t)
				}, t.prototype.toState = function(t) {
					var e = null;
					if (function(t) {
							try {
								JSON.parse(t)
							} catch (t) {
								return !1
							}
							return !0
						}(t)) {
						var r = e = JSON.parse(t);
						if (r[this.tid] && (this.__cl_data_miniapp = e, r = r[this.tid]), r
							.utma) {
							var o = !0;
							if (r.utma.indexOf(".890022063.") > -1) o = !1;
							else {
								var n = r.utma.split(".");
								if (6 === n.length)
									for (var i = 0; i < n.length; i++) {
										var a = n[i];
										if (!a || "undefined" === a || "NaN" === a) {
											o = !1;
											break
										}
									} else o = !1
							}
							o && (this._state = r)
						}
					}
				}, t.prototype.get = function(t) {
					return this._state[t]
				}, t
			}(),
			P = (k = function(t, e) {
				return k = Object.setPrototypeOf || {
					__proto__: []
				}
				instanceof Array && function(t, e) {
					t.__proto__ = e
				} || function(t, e) {
					for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] =
						e[r])
				}, k(t, e)
			}, function(t, e) {
				if ("function" != typeof e && null !== e) throw new TypeError(
					"Class extends value " + String(e) + " is not a constructor or null"
					);

				function r() {
					this.constructor = t
				}
				k(t, e), t.prototype = null === e ? Object.create(e) : (r.prototype = e
					.prototype, new r)
			}),
			x = function(t) {
				function e() {
					return null !== t && t.apply(this, arguments) || this
				}
				return P(e, t), e.prototype.saveValue = function(t, e, r) {
					wx.setStorageSync(t, e)
				}, e.prototype.getValue = function(t) {
					return wx.getStorageSync(t)
				}, e.prototype.setStorage = function() {
					var t = this.__cl_data_miniapp || {},
						e = {
							props: {}
						};
					for (var r in this._state) "props" !== r && (e[r] = this._state[r]);
					t[this.tid] = e, wx.setStorageSync("cl_data_miniapp", JSON.stringify(t))
				}, e
			}(S),
			O = x,
			E = function() {
				function t() {}
				return t.prototype.image = function(t, e, r, o) {}, t.prototype.ajax = function(t,
					e, r, o) {
					throw new Error(w)
				}, t.prototype.beacon = function(t, e, r, o) {
					throw new Error(w)
				}, t.prototype.send = function(t, e) {
					var r = t.method,
						o = t.data,
						n = t.url;
					wx.request({
						method: r,
						data: o,
						url: n,
						complete: function() {
							"function" == typeof e && e()
						}
					})
				}, t.prototype.getUstr = function(t, e, r, o) {
					var n = r.getValue("ustr"),
						i = r.getValue("utma");
					if (function(t) {
							if (!t) return !1;
							var e = t.split(".");
							return 2 === e.length && e.every(Number)
						}(n)) o(!0, n);
					else {
						if (v(i)) {
							var a = i.split(".");
							if (a.length > 2) return void o(!0, a[0] + "." + a[1])
						}
						wx.request({
							url: "https://" + t + "/cbe/collect?_cl_is_mp&tid=" + e,
							method: "GET",
							dataType: "其他",
							success: function(t) {
								var e = t.header["Set-Cookie"];
								if (e && (r.saveValue("icla", e), r.setProps({
										icla: e
									})), "string" == typeof t.data) {
									var n = t.data;
									o(!0, n)
								} else o(!1, new Error(
									"invalid response data type"))
							},
							fail: function(t) {
								return o(!1, t)
							}
						})
					}
				}, t.prototype.getServerTime = function(t, e, r) {
					wx.request({
						url: "https://" + t + "/cbe/ping",
						method: "GET",
						dataType: "其他",
						success: function(t) {
							var o = new Date,
								n = new Date(t.header.Date),
								i = o.valueOf() - new Date(n).valueOf();
							Math.abs(i) <= 18e4 && (n = o, i = 0), e.saveValue(
								"server_time", n.toISOString()), e.saveValue(
								"diff_time", "" + i), r(!0, "" + i)
						},
						fail: function(t) {
							return r(!1, t)
						}
					})
				}, t
			}(),
			A = new WeakMap,
			j = function() {
				function t(t, e, r, o, n, i) {
					this.pageProps = {}, this.deferredCallbacks = [], this.utmPath = "cbe/__utm",
						this.utmReady = !1, this._queue = [], this.tid = e, this.store = r, this
						.domain = o, this.isReady = !1, this.deferredCallbacks = [], this.reporter =
						new E, A.set(this, i), this.getServerTime()
				}
				return t.prototype.genUtm = function() {
					var t = this;
					this.reporter.getUstr(this.domain, this.tid, this.store, (function(e, r) {
						if (e) {
							var o = parseInt("" + (new Date).getTime() / 1e3),
								n = t.store.getValue("utma"),
								i = t.store.getValue("utmb"),
								a = Number(t.store.getValue(
									"utma_created_timestamp")) || 0;
							if (v(n)) {
								var s = n.split(".");
								if (r = s[0] + "." + s[1], o - a > 1800 ? (t.store
										.saveValue("utma", [r, s[2], s[4], o,
											parseInt(s[5]) + 1
										].join(".")), t.store.saveValue(
											"utma_created_timestamp", "" + o)) : s[
										2] != t.tid && t.store.saveValue("utma", [r,
										t.tid, s[3], s[4], s[5]
									].join(".")), i) {
									var u = i.split(".");
									u.length && t.store.saveValue("utmb", [r, u[2],
										o, parseInt(u[4]) + 1
									].join("."))
								} else t.store.saveValue("utmb", [r, o, o, 1].join(
									"."))
							} else t.store.saveValue("utma", [r, t.tid, o, o, 1]
									.join(".")), t.store.saveValue(
									"utma_created_timestamp", "" + o), t.store
								.saveValue("utmb", [r, o, o, 1].join("."));
							t.utmReady = !0, A.get(t).getSystemInfoComplete && t
								._queue.length > 0 && (c(t._queue, (function(e) {
									t.prepareData(e[0], e[1])
								})), t._queue = [])
						}
					}))
				}, t.prototype.getServerTime = function() {
					var t = this;
					this.reporter.getServerTime(this.domain, this.store, (function(e, r) {
						(t.genUtm(), e) && (A.get(t).diffTime = r)
					}))
				}, t.prototype.track = function(t, e, r, o, n) {
					throw new Error(w)
				}, t.prototype.updateTarget = function(t) {
					var e = {};
					t.targetName && (e.targetName = t.targetName), t.targetId && (e.targetId = t
						.targetId), this.push(e)
				}, t.prototype.batch = function(t, e, r) {}, t.prototype.push = function(t) {
					for (var e in t) this.pageProps[e] = t[e]
				}, t.prototype.ready = function(t) {
					this.isReady ? t.apply(this, [t]) : this.deferredCallbacks.push(t)
				}, t.prototype.notify = function(t) {
					var e = this;
					this.isReady = !0, this.deferredCallbacks && this.deferredCallbacks.forEach(
						(function(t) {
							t && "function" == typeof t && t.apply(e, [e])
						}))
				}, t.prototype.prepare = function(t, e) {
					throw new Error(w)
				}, t.prototype.prepareData = function(t, e) {
					throw new Error(w)
				}, t.prototype.getUtm = function() {
					return {
						utma: this.utma,
						utmb: this.utmb,
						utmc: this.utmc
					}
				}, t.prototype.getPageProps = function() {
					return this.pageProps
				}, t
			}(),
			I = "mini_program_open",
			V = "mini_program_resign_active",
			C = "mini_program_click";

		function D(t) {
			return D = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(
				t) {
				return typeof t
			} : function(t) {
				return t && "function" == typeof Symbol && t.constructor === Symbol && t !==
					Symbol.prototype ? "symbol" : typeof t
			}, D(t)
		}
		var R = function() {
				var t = function(e, r) {
					return t = Object.setPrototypeOf || {
						__proto__: []
					}
					instanceof Array && function(t, e) {
						t.__proto__ = e
					} || function(t, e) {
						for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[
							r] = e[r])
					}, t(e, r)
				};
				return function(e, r) {
					if ("function" != typeof r && null !== r) throw new TypeError(
						"Class extends value " + String(r) +
						" is not a constructor or null");

					function o() {
						this.constructor = e
					}
					t(e, r), e.prototype = null === r ? Object.create(r) : (o.prototype = r
						.prototype, new o)
				}
			}(),
			N = function() {
				return N = Object.assign || function(t) {
					for (var e, r = 1, o = arguments.length; r < o; r++)
						for (var n in e = arguments[r]) Object.prototype.hasOwnProperty.call(e,
							n) && (t[n] = e[n]);
					return t
				}, N.apply(this, arguments)
			},
			M = new WeakMap,
			H = function(t) {
				function e(e, r, o, n, i, a) {
					var s = t.call(this, e, r, o, n, i, a) || this;
					return M.set(s, a), s
				}
				return R(e, t), e.prototype.track = function(t, e, r, o, n) {
					var i = {};
					if ("object" == D(e) ? (o = e, n = r) : (i.targetName = e || this.pageProps
							.targetName, i.targetId = r || this.pageProps.targetId), o)
						for (var a in o) i[a] = o[a];
					i.date = (new Date).toISOString(), this.updateTarget(i), t === V && this
						.oldResignActiveDate && (i = N(N({}, i), {
							oldResignActiveDate: this.oldResignActiveDate
						})), this.prepareData({
							type: "track",
							event: t,
							properties: i
						}, n)
				}, e.prototype.prepareData = function(t, e) {
					var r = M.get(this),
						o = r.getCurrentPage();
					if (!r.getSystemInfoComplete || !this.utmReady) return this._queue.push(
						arguments), !1;
					var n = this.store.getValue("diff_time"),
						i = new Date(t.properties.date).getTime() - Number(n),
						a = new Date(i).toISOString(),
						s = {
							properties: {
								date: a
							}
						};
					t.event === V && (this.oldResignActiveDate = a), g(s, t), s.properties
						.eventId || (s.properties.eventId = d()), t.type && "profile" === t.type
						.slice(0, 7) || (s.properties = g({}, this.getPageProps(), o
							.currentPageProps, this.store.getProps(), s.properties)), f(s), h(
						s), this.prepare(s, e)
				}, e.prototype.prepare = function(t, e) {
					var r = t.event,
						o = t.properties,
						n = g({
							event: r,
							tenantId: this.tid
						}, o),
						i = this.store;
					n.utma = i.getValue("utma"), r === I && (delete n.pageOpenId, delete n
						.pageName, delete n.path), this.reporter.send({
						method: "GET",
						data: n,
						url: "https://" + this.domain + "/" + this.utmPath
					}, e)
				}, e
			}(j),
			L = H,
			q = new WeakMap,
			B = function() {
				function t(t, e, r) {
					this.dm_elementQueue = [], this.dm_trackInterval = 3e4, this
						.dm_trackElementLength = 10, this.dm_path = t, this.dm_pageOpenId = d(),
						this.dm_pageId = function(t) {
							if (!t) return "";
							for (var e = 2166136261, r = 0, o = t.length; r < o; r++) e ^= t
								.charCodeAt(r), e += (e << 1) + (e << 4) + (e << 7) + (e << 8) + (
									e << 24);
							return (e >>> 0).toString()
						}(t), q.set(this, r), this.initStayRecord(), this.currentPageProps = {}
				}
				return t.prototype.initStayRecord = function() {
					var t = this;
					this.stayRecord = {
						__record: function(t) {
							var e = this;
							clearTimeout(this.recordTimeout), t(), this.recordTimeout =
								setTimeout((function() {
									e.__record(t)
								}), 5e3)
						},
						start: function(e) {
							var r = q.get(t),
								o = r.getTracker();
							if (r.recordPageStay) {
								var n = r.store.get("utma"),
									i = (new Date).getTime();
								this.__record((function() {
									o.track("page_stay", g({}, e, {
										primaryPageId: n + i
									}))
								}))
							}
						},
						stop: function() {
							clearTimeout(this.recordTimeout)
						}
					}
				}, t.prototype.onLaunch = function(t) {
					this.dm_ignoreAutoTrack || (g(this.currentPageProps, y(t)), this
						.initStayRecord())
				}, t.prototype.onShow = function(t) {
					throw new Error(w)
				}, t.prototype.onHide = function() {
					throw new Error(w)
				}, t.prototype.onPageScroll = function() {
					throw new Error(w)
				}, t.prototype.onResize = function() {
					throw new Error(w)
				}, t.prototype.onClick = function(t) {
					throw new Error(w)
				}, t.prototype.supportAutoTrack = function(t) {
					return (q.get(this).autoTrack & t) === t
				}, t.prototype.getPageTitle = function(t) {
					throw new Error(w)
				}, t.prototype.attach = function() {
					throw new Error(w)
				}, t
			}(),
			U = function() {
				return U = Object.assign || function(t) {
					for (var e, r = 1, o = arguments.length; r < o; r++)
						for (var n in e = arguments[r]) Object.prototype.hasOwnProperty.call(e,
							n) && (t[n] = e[n]);
					return t
				}, U.apply(this, arguments)
			},
			F = new WeakMap,
			W = function() {
				function t(t, e, r, o, n, i) {
					this.dm_eventProps = {}, this.dm_id = t, this.dm_name = e, this.dm_eventProps =
						r, this.dm_ignoreAutoTrack = o, F.set(this, n), this.dm_eventId = d()
				}
				return t.prototype.getElementContent = function() {
					return this.dm_name
				}, t.prototype.getBelongingPage = function() {
					return F.get(this)
				}, t.prototype.toEventData = function() {
					return U(U({}, this.dm_eventProps), {
						eventId: this.dm_eventId,
						reportFlag: "sdk"
					})
				}, t
			}(),
			G = function() {
				var t = function(e, r) {
					return t = Object.setPrototypeOf || {
						__proto__: []
					}
					instanceof Array && function(t, e) {
						t.__proto__ = e
					} || function(t, e) {
						for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[
							r] = e[r])
					}, t(e, r)
				};
				return function(e, r) {
					if ("function" != typeof r && null !== r) throw new TypeError(
						"Class extends value " + String(r) +
						" is not a constructor or null");

					function o() {
						this.constructor = e
					}
					t(e, r), e.prototype = null === r ? Object.create(r) : (o.prototype = r
						.prototype, new o)
				}
			}(),
			J = function() {
				return J = Object.assign || function(t) {
					for (var e, r = 1, o = arguments.length; r < o; r++)
						for (var n in e = arguments[r]) Object.prototype.hasOwnProperty.call(e,
							n) && (t[n] = e[n]);
					return t
				}, J.apply(this, arguments)
			},
			z = new WeakMap,
			Q = function(t) {
				function e(e, r, o) {
					var n = t.call(this, e, r, o) || this;
					return z.set(n, o), n
				}
				return G(e, t), e.prototype.onShow = function(t) {
					var r = z.get(this);
					this.dm_openTime = Date.now(), this.dm_previousTimeOnPage = 0, this
						.dm_path = t;
					var o = new e(t, null, r);
					r.currentPage = o, r.dm_pageHistory.push(o.dm_path);
					var n = r.getTracker(),
						i = n.getPageProps().pathArgs;
					n.push({
						path: t,
						pageOpenId: this.dm_pageOpenId,
						pageName: this.getPageTitle(t) || t,
						pathArgs: i,
						miniUrl: "" + t + b(i)
					}), this.supportAutoTrack(2) && !this.dm_ignoreAutoTrack && t && (n
						.track("mini_program_view", {
							reportFlag: "sdk"
						}), r.previousPageRoute = "", this.stayRecord.start({}))
				}, e.prototype.onHide = function() {
					var t = z.get(this);
					if (this.supportAutoTrack(4) && !this.dm_ignoreAutoTrack) {
						var e = t.getTracker(),
							r = Date.now() - this.dm_openTime;
						e.track("mini_program_exit", {
							viewDuration: this.dm_previousTimeOnPage + r,
							externalId: this.dm_pageOpenId,
							reportFlag: "sdk"
						}), this.dm_previousTimeOnPage += r, this.stayRecord.stop()
					}
				}, e.prototype.getPageTitle = function(t) {
					if ("未取到" === t || !t) return "";
					var e = "";
					try {
						if (__wxConfig) {
							var r = __wxConfig,
								o = __wxConfig.page || {},
								n = o[t] || o[t + ".html"],
								i = {},
								a = {};
							if (r.global && r.global.window && r.global.window
								.navigationBarTitleText && (i.titleVal = r.global.window
									.navigationBarTitleText), n && n.window && n.window
								.navigationBarTitleText && (a.titleVal = n.window
									.navigationBarTitleText), !a.titleVal && __wxAppCode__) {
								var s = __wxAppCode__[t + ".json"];
								s && s.navigationBarTitleText && (a.titleVal = s
									.navigationBarTitleText)
							}
							if (c(z.get(this).globalTitle, (function(r, o) {
									if (o === t) return e = r
								})), 0 === e.length) {
								var u = g(i, a);
								e = u.titleVal
							}
						}
					} catch (t) {}
					return e
				}, e.prototype.onClick = function(t) {
					if (this.supportAutoTrack(8)) {
						var e = z.get(this),
							r = e.getTracker(),
							o = r.getPageProps(),
							n = J(J({}, o), {
								event: C,
								elementType: "elementType",
								elementSelector: "elementSelector",
								elementPath: "elementPath",
								title: o.pageName
							}),
							i = new W("", "", n, !1, this, e);
						r.track(C, i.toEventData())
					}
				}, e
			}(B),
			Y = function() {
				function t(t, e, r, o, n, i, a, s, u, p, l, f, h, g) {
					var d = this;
					this.autoTrack = 0, this.dm_pageHistory = [], this.pageOpenMode = "always", this
						.tracker = null, this.getSystemInfoComplete = !1, this.globalTitle = {},
						this.setStatusComplete = function() {
							d.getSystemInfoComplete = !0;
							var t = d.getTracker();
							t._queue.length > 0 && t.utmReady && (c(t._queue, (function(e) {
								t.prepareData(e[0], e[1])
							})), t._queue = [])
						}, this.name = t, this.tid = e, this.domain = r, this.maxStringLength = o,
						this.autoTrack = a, this.recordPageStay = u, this.version = n, this
						.debugLevel = g;
					var y = new O(e);
					this.store = y, this.tracker = new L(this.ustr, this.tid, y, r, i, this), this
						.tracker.push({
							cl_sdk_version: n,
							device: this.getDevice()
						}), this.defSetNavigationBarTitle(), this.registerPage()
				}
				return t.prototype.init = function() {
					this.getSystem(), this.store.init()
				}, t.prototype.registerPage = function() {
					var t = new Q(this.route, null, this);
					this.currentPage = t, this.dm_pageHistory.push(t.dm_path)
				}, t.prototype.onLaunch = function() {
					this.previousTimeOnApp = 0, this.init(), this.tracker && this.tracker
						.notify(null)
				}, t.prototype.onShow = function(t) {
					throw new Error(w)
				}, t.prototype.onHide = function(t) {
					throw new Error(w)
				}, t.prototype.onExit = function() {
					throw new Error(w)
				}, t.prototype.supportAutoTrack = function(t) {
					return (this.autoTrack & t) === t
				}, t.prototype.updateUtmb = function() {
					var t = this.store.getValue("utmb");
					if (t) {
						var e = t.split("."),
							r = parseInt("" + (new Date).getTime() / 1e3);
						if (e.length) {
							var o = e[0] + "." + e[1];
							this.store.saveValue("utmb", [o, e[2], r, parseInt(e[4]) + 1].join(
								"."))
						}
					}
				}, t.prototype.getCurrentPage = function() {
					return this.currentPage
				}, t.prototype.getTracker = function() {
					return this.tracker
				}, t.prototype.getSystem = function() {
					throw new Error(w)
				}, t.prototype.getDevice = function() {
					throw new Error(w)
				}, t.prototype.getFingerprint = function() {
					var t = this.store.getValue("device");
					return t || (t = d(), this.store.saveValue("device", t)), t
				}, t.prototype.defSetNavigationBarTitle = function() {
					throw new Error(w)
				}, t.prototype.set = function(t) {
					var e = ["flushInterval", "bulkUploadLimit", "max_string_length",
						"recordPageStay", "autoTrack"
					];
					if (l(t))
						for (var r in t) e.includes(r) && ("autoTrack" === r ? this
							.setAutoTrack(t[r]) : this[r] = t[r])
				}, t.prototype.setAutoTrack = function(t) {
					if (Array.isArray(t)) {
						for (var e = 0, r = 0; r < t.length; r++) e |= t[r];
						this.autoTrack = e
					} else this.autoTrack = t
				}, t.prototype.attach = function() {
					throw new Error(w)
				}, t.prototype.setEnableAutoTrackAppStart = function(t) {
					t ? this.autoTrack |= 1 : this.autoTrack &= -2
				}, t.prototype.setEnableAutoTrackPageOpen = function(t) {
					t ? this.autoTrack |= 2 : this.autoTrack &= -3
				}, t.prototype.setEnableAutoTrackPageExit = function(t) {
					t ? this.autoTrack |= 4 : this.autoTrack &= -5
				}, t.prototype.setEnableAutoTrackClick = function(t) {
					t ? this.autoTrack |= 8 : this.autoTrack &= -9
				}, t.prototype.setEnableAutoTrackAppResign = function(t) {
					t ? this.autoTrack |= 16 : this.autoTrack &= -17
				}, t.prototype.setEnableVisualTrackClick = function(t) {
					throw new Error(w)
				}, t.prototype.setEnableSpa = function(t) {
					throw new Error(w)
				}, t.prototype.setPageOpenMode = function(t) {
					throw new Error(w)
				}, t.prototype.setSelectors = function() {
					throw new Error(w)
				}, t
			}(),
			K = function() {
				var t = function(e, r) {
					return t = Object.setPrototypeOf || {
						__proto__: []
					}
					instanceof Array && function(t, e) {
						t.__proto__ = e
					} || function(t, e) {
						for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[
							r] = e[r])
					}, t(e, r)
				};
				return function(e, r) {
					if ("function" != typeof r && null !== r) throw new TypeError(
						"Class extends value " + String(r) +
						" is not a constructor or null");

					function o() {
						this.constructor = e
					}
					t(e, r), e.prototype = null === r ? Object.create(r) : (o.prototype = r
						.prototype, new o)
				}
			}(),
			X = function(t) {
				function e() {
					return null !== t && t.apply(this, arguments) || this
				}
				return K(e, t), e.prototype.onShow = function(t) {
					this.openTime = Date.now(), this.updateUtmb();
					var e = y(t.query);
					e.pathArgs = t.query, e.sceneId = t.scene, t.referrerInfo && (e.appId = t
							.referrerInfo.appId), this.tracker.push(e), this.supportAutoTrack(
						1) && this.tracker.track(I, {
							reportFlag: "sdk"
						});
					var r = this.tid,
						o = this.getTracker().getPageProps().targetId;
					if (o) {
						var n = r + "-" + o + "-is-first-open";
						this.store.getValue(n) || (this.tracker.track(
						"mini_program_first_open", {
							reportFlag: "sdk"
						}), this.store.saveValue(n, "true"))
					}
				}, e.prototype.onHide = function(t) {
					var e = Date.now() - this.openTime;
					this.supportAutoTrack(16) && this.tracker.track(V, {
							activeDuration: this.previousTimeOnApp + e,
							externalId: this.store.getValue("utmb"),
							reportFlag: "sdk"
						}), this.previousTimeOnApp += e, this.previousPageRoute = this
						.currentPage.dm_path
				}, e.prototype.getSystem = function() {
					var t = this,
						e = this.getTracker(),
						r = function() {
							var r = t;
							wx.getSystemInfo({
								success: function(t) {
									e.push({
										model: t.model,
										screen_width: Number(t.windowWidth),
										screen_height: Number(t
											.windowHeight),
										os: t.system.split(" ")[0],
										os_version: t.system.split(" ")[1]
									})
								},
								complete: r.setStatusComplete
							})
						};
					wx.getNetworkType({
						success: function(t) {
							e.push({
								network_type: t.networkType
							})
						},
						complete: r
					})
				}, e.prototype.getDevice = function() {
					return "wxminiapp-" + this.getFingerprint()
				}, e.prototype.defSetNavigationBarTitle = function() {
					var t = this;
					try {
						var e = wx.setNavigationBarTitle;
						Object.defineProperty(wx, "setNavigationBarTitle", {
							get: function() {
								return function(r) {
									var o = getCurrentPages(),
										n = o[o.length - 1].route || "";
									r = l(r) ? r : {}, t.globalTitle[n] = r
										.title, e.call(this, r)
								}
							}
						})
					} catch (t) {}
				}, e
			}(Y),
			Z = "cl_tracker",
			$ = ["onLoad", "onShow", "onReady", "onHide", "onUnload", "onPullDownRefresh",
				"onReachBottom", "onShareAppMessage", "onShareTimeline", "onAddToFavorites",
				"onPageScroll", "onResize", "onTabItemTap", "onSaveExitState"
			],
			tt = new X(Z, "4921629850741548986", "cbe.convertlab.com", 255, "4.0.0-x7b18baa.master",
				"", 0, !1, !1, 30, 10, "always", "", 1),
			et = tt.getTracker(),
			rt = et.track.bind(et),
			ot = et.push.bind(et),
			nt = et.ready.bind(et),
			it = tt.set.bind(tt),
			at = App;
		App = function(t) {
			m(t, "onLaunch", (function() {
				this[Z] = mt, tt.onLaunch()
			})), m(t, "onShow", (function(t) {
				tt.onShow(t)
			})), m(t, "onHide", (function() {
				tt.onHide({})
			})), at.call(this, t)
		};
		var st = tt.getCurrentPage(),
			ut = Page;
		Page = function(t) {
			m(t, "onLoad", (function() {
				st.onLaunch()
			})), m(t, "onUnload", (function() {
				st.onHide()
			})), m(t, "onShow", (function() {
				st.onShow(this.route)
			})), m(t, "onHide", (function() {
				st.onHide()
			}));
			var e = function(t, e) {
				var r = [];
				for (var o in t) "function" == typeof t[o] && e.indexOf(o) > -1 && r.push(
				o);
				return r
			}(t, $);
			! function(t, e) {
				for (var r = 0; r < t.length; r++) e(t[r], r)
			}(e, (function(e) {
				! function(t, e, r) {
					var o = t[e];
					t[e] = function() {
						for (var t = [], e = 0; e < arguments.length; e++) t[e] =
							arguments[e];
						return r.apply(this, t), o.apply(this, t)
					}
				}(t, e, (function() {
					for (var t = [], e = 0; e < arguments.length; e++) t[e] =
						arguments[e];
					var r = t[0];
					_(null == r ? void 0 : r.type) && st.onClick(r)
				}))
			})), ut.call(this, t)
		};
		var pt = tt.onLaunch.bind(tt),
			ct = tt.onShow.bind(tt),
			lt = st.onLaunch.bind(st),
			ft = tt.setEnableAutoTrackAppStart.bind(tt),
			ht = tt.setEnableAutoTrackPageOpen.bind(tt),
			gt = tt.setEnableAutoTrackPageExit.bind(tt),
			dt = tt.setEnableAutoTrackClick.bind(tt),
			yt = tt.setEnableAutoTrackAppResign.bind(tt);
		yt(!0);
		var mt = {
				track: rt,
				push: ot,
				ready: nt,
				set: it,
				onAppLaunch: pt,
				onAppShow: ct,
				onPageLoad: lt,
				setEnableAutoTrackMiniProgramOpen: ft,
				setEnableAutoTrackMiniProgramView: ht,
				setEnableAutoTrackMiniProgramExit: gt,
				setEnableAutoTrackMiniProgramResign: yt,
				setEnableAutoTrackClick: dt
			},
			vt = function() {
				return vt = Object.assign || function(t) {
					for (var e, r = 1, o = arguments.length; r < o; r++)
						for (var n in e = arguments[r]) Object.prototype.hasOwnProperty.call(e,
							n) && (t[n] = e[n]);
					return t
				}, vt.apply(this, arguments)
			},
			_t = vt({}, mt)
	}])
}));
